	.file	1 "OrgaCompus.c"
	.section .mdebug.abi32
	.previous
	.abicalls
	.data
	.align	2
	.type	encoding_table, @object
	.size	encoding_table, 64
encoding_table:
	.byte	65
	.byte	66
	.byte	67
	.byte	68
	.byte	69
	.byte	70
	.byte	71
	.byte	72
	.byte	73
	.byte	74
	.byte	75
	.byte	76
	.byte	77
	.byte	78
	.byte	79
	.byte	80
	.byte	81
	.byte	82
	.byte	83
	.byte	84
	.byte	85
	.byte	86
	.byte	87
	.byte	88
	.byte	89
	.byte	90
	.byte	97
	.byte	98
	.byte	99
	.byte	100
	.byte	101
	.byte	102
	.byte	103
	.byte	104
	.byte	105
	.byte	106
	.byte	107
	.byte	108
	.byte	109
	.byte	110
	.byte	111
	.byte	112
	.byte	113
	.byte	114
	.byte	115
	.byte	116
	.byte	117
	.byte	118
	.byte	119
	.byte	120
	.byte	121
	.byte	122
	.byte	48
	.byte	49
	.byte	50
	.byte	51
	.byte	52
	.byte	53
	.byte	54
	.byte	55
	.byte	56
	.byte	57
	.byte	43
	.byte	47
	.text
	.align	2
	.globl	calcularMascaraBit
	.ent	calcularMascaraBit
calcularMascaraBit:
	.frame	$fp,24,$ra		# vars= 8, regs= 2/0, args= 0, extra= 8
	.mask	0x50000000,-4
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,24
	.cprestore 0
	sw	$fp,20($sp)
	sw	$gp,16($sp)
	move	$fp,$sp
	sw	$a0,24($fp)
	li	$v0,1			# 0x1
	sb	$v0,12($fp)
	sw	$zero,8($fp)
$L18:
	lw	$v0,8($fp)
	lw	$v1,24($fp)
	slt	$v0,$v0,$v1
	bne	$v0,$zero,$L21
	b	$L19
$L21:
	lbu	$v0,12($fp)
	sll	$v0,$v0,1
	sb	$v0,12($fp)
	lw	$v0,8($fp)
	addu	$v0,$v0,1
	sw	$v0,8($fp)
	b	$L18
$L19:
	lbu	$v0,12($fp)
	move	$sp,$fp
	lw	$fp,20($sp)
	addu	$sp,$sp,24
	j	$ra
	.end	calcularMascaraBit
	.size	calcularMascaraBit, .-calcularMascaraBit
	.align	2
	.globl	calcularMascaraLSB
	.ent	calcularMascaraLSB
calcularMascaraLSB:
	.frame	$fp,32,$ra		# vars= 16, regs= 2/0, args= 0, extra= 8
	.mask	0x50000000,-4
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,32
	.cprestore 0
	sw	$fp,28($sp)
	sw	$gp,24($sp)
	move	$fp,$sp
	sw	$a0,32($fp)
	lw	$v0,32($fp)
	slt	$v0,$v0,9
	bne	$v0,$zero,$L23
	sw	$zero,16($fp)
	b	$L22
$L23:
	sb	$zero,12($fp)
	lw	$v0,32($fp)
	addu	$v0,$v0,-1
	sw	$v0,8($fp)
$L24:
	lw	$v0,8($fp)
	bgez	$v0,$L27
	b	$L25
$L27:
	lbu	$v0,12($fp)
	addu	$v0,$v0,1
	sb	$v0,12($fp)
	lbu	$v0,12($fp)
	sw	$v0,20($fp)
	lw	$v0,8($fp)
	beq	$v0,$zero,$L28
	lw	$v0,20($fp)
	sll	$v0,$v0,1
	sw	$v0,20($fp)
$L28:
	lw	$v0,20($fp)
	sb	$v0,12($fp)
	lw	$v0,8($fp)
	addu	$v0,$v0,-1
	sw	$v0,8($fp)
	b	$L24
$L25:
	lbu	$v0,12($fp)
	sw	$v0,16($fp)
$L22:
	lw	$v0,16($fp)
	move	$sp,$fp
	lw	$fp,28($sp)
	addu	$sp,$sp,32
	j	$ra
	.end	calcularMascaraLSB
	.size	calcularMascaraLSB, .-calcularMascaraLSB
	.align	2
	.globl	calcularMascaraMSB
	.ent	calcularMascaraMSB
calcularMascaraMSB:
	.frame	$fp,48,$ra		# vars= 8, regs= 3/0, args= 16, extra= 8
	.mask	0xd0000000,-8
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,48
	.cprestore 16
	sw	$ra,40($sp)
	sw	$fp,36($sp)
	sw	$gp,32($sp)
	move	$fp,$sp
	sw	$a0,48($fp)
	lw	$v0,48($fp)
	slt	$v0,$v0,9
	bne	$v0,$zero,$L30
	sw	$zero,28($fp)
	b	$L29
$L30:
	lw	$a0,48($fp)
	la	$t9,calcularMascaraLSB
	jal	$ra,$t9
	sb	$v0,24($fp)
	lbu	$a0,24($fp)
	li	$v1,8			# 0x8
	lw	$v0,48($fp)
	subu	$v0,$v1,$v0
	sll	$v0,$a0,$v0
	sb	$v0,24($fp)
	lbu	$v0,24($fp)
	sw	$v0,28($fp)
$L29:
	lw	$v0,28($fp)
	move	$sp,$fp
	lw	$ra,40($sp)
	lw	$fp,36($sp)
	addu	$sp,$sp,48
	j	$ra
	.end	calcularMascaraMSB
	.size	calcularMascaraMSB, .-calcularMascaraMSB
	.align	2
	.globl	shiftRightCustom
	.ent	shiftRightCustom
shiftRightCustom:
	.frame	$fp,48,$ra		# vars= 8, regs= 4/0, args= 16, extra= 8
	.mask	0xd0010000,-4
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,48
	.cprestore 16
	sw	$ra,44($sp)
	sw	$fp,40($sp)
	sw	$gp,36($sp)
	sw	$s0,32($sp)
	move	$fp,$sp
	sw	$a0,48($fp)
	sw	$a1,52($fp)
	lw	$v0,52($fp)
	bne	$v0,$zero,$L32
	b	$L31
$L32:
	sb	$zero,28($fp)
	sb	$zero,29($fp)
	sw	$zero,24($fp)
$L33:
	lw	$v0,24($fp)
	slt	$v0,$v0,3
	bne	$v0,$zero,$L36
	b	$L31
$L36:
	lw	$v1,48($fp)
	lw	$v0,24($fp)
	addu	$s0,$v1,$v0
	lw	$a0,52($fp)
	la	$t9,calcularMascaraLSB
	jal	$ra,$t9
	move	$v1,$v0
	lbu	$v0,0($s0)
	and	$v0,$v1,$v0
	sb	$v0,28($fp)
	lw	$v1,48($fp)
	lw	$v0,24($fp)
	addu	$a0,$v1,$v0
	lw	$v1,48($fp)
	lw	$v0,24($fp)
	addu	$v0,$v1,$v0
	lbu	$v1,0($v0)
	lw	$v0,52($fp)
	sra	$v0,$v1,$v0
	sb	$v0,0($a0)
	lw	$v1,48($fp)
	lw	$v0,24($fp)
	addu	$a0,$v1,$v0
	lw	$v1,48($fp)
	lw	$v0,24($fp)
	addu	$v0,$v1,$v0
	lbu	$v1,0($v0)
	lbu	$v0,29($fp)
	addu	$v0,$v1,$v0
	sb	$v0,0($a0)
	lbu	$a0,28($fp)
	li	$v1,8			# 0x8
	lw	$v0,52($fp)
	subu	$v0,$v1,$v0
	sll	$v0,$a0,$v0
	sb	$v0,29($fp)
	lw	$v0,24($fp)
	addu	$v0,$v0,1
	sw	$v0,24($fp)
	b	$L33
$L31:
	move	$sp,$fp
	lw	$ra,44($sp)
	lw	$fp,40($sp)
	lw	$s0,32($sp)
	addu	$sp,$sp,48
	j	$ra
	.end	shiftRightCustom
	.size	shiftRightCustom, .-shiftRightCustom
	.align	2
	.globl	shiftLeftCustom
	.ent	shiftLeftCustom
shiftLeftCustom:
	.frame	$fp,48,$ra		# vars= 8, regs= 4/0, args= 16, extra= 8
	.mask	0xd0010000,-4
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,48
	.cprestore 16
	sw	$ra,44($sp)
	sw	$fp,40($sp)
	sw	$gp,36($sp)
	sw	$s0,32($sp)
	move	$fp,$sp
	sw	$a0,48($fp)
	sw	$a1,52($fp)
	lw	$v0,52($fp)
	bne	$v0,$zero,$L38
	b	$L37
$L38:
	sb	$zero,28($fp)
	sb	$zero,29($fp)
	li	$v0,3			# 0x3
	sw	$v0,24($fp)
$L39:
	lw	$v0,24($fp)
	bgez	$v0,$L42
	b	$L37
$L42:
	lw	$v1,48($fp)
	lw	$v0,24($fp)
	addu	$s0,$v1,$v0
	lw	$a0,52($fp)
	la	$t9,calcularMascaraMSB
	jal	$ra,$t9
	move	$v1,$v0
	lbu	$v0,0($s0)
	and	$v0,$v1,$v0
	sb	$v0,28($fp)
	lw	$v1,48($fp)
	lw	$v0,24($fp)
	addu	$a0,$v1,$v0
	lw	$v1,48($fp)
	lw	$v0,24($fp)
	addu	$v0,$v1,$v0
	lbu	$v1,0($v0)
	lw	$v0,52($fp)
	sll	$v0,$v1,$v0
	sb	$v0,0($a0)
	lw	$v1,48($fp)
	lw	$v0,24($fp)
	addu	$a0,$v1,$v0
	lw	$v1,48($fp)
	lw	$v0,24($fp)
	addu	$v0,$v1,$v0
	lbu	$v1,0($v0)
	lbu	$v0,29($fp)
	addu	$v0,$v1,$v0
	sb	$v0,0($a0)
	lbu	$a0,28($fp)
	li	$v1,8			# 0x8
	lw	$v0,52($fp)
	subu	$v0,$v1,$v0
	sra	$v0,$a0,$v0
	sb	$v0,29($fp)
	lw	$v0,24($fp)
	addu	$v0,$v0,-1
	sw	$v0,24($fp)
	b	$L39
$L37:
	move	$sp,$fp
	lw	$ra,44($sp)
	lw	$fp,40($sp)
	lw	$s0,32($sp)
	addu	$sp,$sp,48
	j	$ra
	.end	shiftLeftCustom
	.size	shiftLeftCustom, .-shiftLeftCustom
	.align	2
	.globl	obtenerValoresBinarios
	.ent	obtenerValoresBinarios
obtenerValoresBinarios:
	.frame	$fp,56,$ra		# vars= 16, regs= 4/0, args= 16, extra= 8
	.mask	0xd0010000,-4
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,56
	.cprestore 16
	sw	$ra,52($sp)
	sw	$fp,48($sp)
	sw	$gp,44($sp)
	sw	$s0,40($sp)
	move	$fp,$sp
	sw	$a0,56($fp)
	sw	$a1,60($fp)
	sw	$zero,32($fp)
$L44:
	lw	$v0,32($fp)
	slt	$v0,$v0,4
	bne	$v0,$zero,$L47
	b	$L43
$L47:
	sw	$zero,28($fp)
$L48:
	lw	$v0,28($fp)
	slt	$v0,$v0,6
	bne	$v0,$zero,$L51
	b	$L46
$L51:
	lw	$a0,56($fp)
	li	$a1,1			# 0x1
	la	$t9,shiftLeftCustom
	jal	$ra,$t9
	lw	$v1,60($fp)
	lw	$v0,32($fp)
	addu	$s0,$v1,$v0
	li	$v1,5			# 0x5
	lw	$v0,28($fp)
	subu	$v0,$v1,$v0
	move	$a0,$v0
	la	$t9,calcularMascaraBit
	jal	$ra,$t9
	move	$v1,$v0
	lbu	$v0,0($s0)
	and	$v0,$v1,$v0
	lbu	$v1,24($fp)
	addu	$v0,$v1,$v0
	sb	$v0,24($fp)
	lb	$a0,24($fp)
	li	$v1,5			# 0x5
	lw	$v0,28($fp)
	subu	$v0,$v1,$v0
	sra	$v0,$a0,$v0
	sb	$v0,24($fp)
	lw	$v0,56($fp)
	addu	$a0,$v0,2
	lw	$v0,56($fp)
	addu	$v0,$v0,2
	lbu	$v1,0($v0)
	lbu	$v0,24($fp)
	addu	$v0,$v1,$v0
	sb	$v0,0($a0)
	sb	$zero,24($fp)
	lw	$v0,28($fp)
	addu	$v0,$v0,1
	sw	$v0,28($fp)
	b	$L48
$L46:
	lw	$v0,32($fp)
	addu	$v0,$v0,1
	sw	$v0,32($fp)
	b	$L44
$L43:
	move	$sp,$fp
	lw	$ra,52($sp)
	lw	$fp,48($sp)
	lw	$s0,40($sp)
	addu	$sp,$sp,56
	j	$ra
	.end	obtenerValoresBinarios
	.size	obtenerValoresBinarios, .-obtenerValoresBinarios
	.align	2
	.globl	obtenerValoresBase64
	.ent	obtenerValoresBase64
obtenerValoresBase64:
	.frame	$fp,56,$ra		# vars= 8, regs= 5/0, args= 16, extra= 8
	.mask	0xd0030000,-8
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,56
	.cprestore 16
	sw	$ra,48($sp)
	sw	$fp,44($sp)
	sw	$gp,40($sp)
	sw	$s1,36($sp)
	sw	$s0,32($sp)
	move	$fp,$sp
	sw	$a0,56($fp)
	sw	$a1,60($fp)
	sw	$zero,24($fp)
$L53:
	lw	$v0,24($fp)
	slt	$v0,$v0,4
	bne	$v0,$zero,$L56
	b	$L52
$L56:
	lw	$v0,24($fp)
	beq	$v0,$zero,$L57
	li	$v0,6			# 0x6
	sw	$v0,28($fp)
	b	$L58
$L57:
	sw	$zero,28($fp)
$L58:
	lw	$a0,60($fp)
	lw	$a1,28($fp)
	la	$t9,shiftRightCustom
	jal	$ra,$t9
	lw	$v1,56($fp)
	lw	$v0,24($fp)
	subu	$s1,$v1,$v0
	lw	$v0,60($fp)
	addu	$s0,$v0,2
	li	$a0,6			# 0x6
	la	$t9,calcularMascaraLSB
	jal	$ra,$t9
	move	$v1,$v0
	lbu	$v0,0($s0)
	and	$v0,$v1,$v0
	sb	$v0,3($s1)
	lw	$v0,24($fp)
	addu	$v0,$v0,1
	sw	$v0,24($fp)
	b	$L53
$L52:
	move	$sp,$fp
	lw	$ra,48($sp)
	lw	$fp,44($sp)
	lw	$s1,36($sp)
	lw	$s0,32($sp)
	addu	$sp,$sp,56
	j	$ra
	.end	obtenerValoresBase64
	.size	obtenerValoresBase64, .-obtenerValoresBase64
	.align	2
	.globl	transformacionBase64ABinario
	.ent	transformacionBase64ABinario
transformacionBase64ABinario:
	.frame	$fp,48,$ra		# vars= 8, regs= 3/0, args= 16, extra= 8
	.mask	0xd0000000,-8
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,48
	.cprestore 16
	sw	$ra,40($sp)
	sw	$fp,36($sp)
	sw	$gp,32($sp)
	move	$fp,$sp
	sw	$a0,48($fp)
	sw	$a1,52($fp)
	li	$a0,3			# 0x3
	la	$t9,malloc
	jal	$ra,$t9
	sw	$v0,24($fp)
	lw	$a0,24($fp)
	lw	$a1,48($fp)
	la	$t9,obtenerValoresBinarios
	jal	$ra,$t9
	lw	$v0,24($fp)
	move	$sp,$fp
	lw	$ra,40($sp)
	lw	$fp,36($sp)
	addu	$sp,$sp,48
	j	$ra
	.end	transformacionBase64ABinario
	.size	transformacionBase64ABinario, .-transformacionBase64ABinario
	.align	2
	.globl	transformacionBinarioABase64
	.ent	transformacionBinarioABase64
transformacionBinarioABase64:
	.frame	$fp,48,$ra		# vars= 8, regs= 3/0, args= 16, extra= 8
	.mask	0xd0000000,-8
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,48
	.cprestore 16
	sw	$ra,40($sp)
	sw	$fp,36($sp)
	sw	$gp,32($sp)
	move	$fp,$sp
	sw	$a0,48($fp)
	sw	$a1,52($fp)
	li	$a0,4			# 0x4
	la	$t9,malloc
	jal	$ra,$t9
	sw	$v0,24($fp)
	lw	$a0,24($fp)
	lw	$a1,48($fp)
	la	$t9,obtenerValoresBase64
	jal	$ra,$t9
	lw	$v0,24($fp)
	move	$sp,$fp
	lw	$ra,40($sp)
	lw	$fp,36($sp)
	addu	$sp,$sp,48
	j	$ra
	.end	transformacionBinarioABase64
	.size	transformacionBinarioABase64, .-transformacionBinarioABase64
	.align	2
	.globl	tablaContieneCaracter
	.ent	tablaContieneCaracter
tablaContieneCaracter:
	.frame	$fp,32,$ra		# vars= 16, regs= 2/0, args= 0, extra= 8
	.mask	0x50000000,-4
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,32
	.cprestore 0
	sw	$fp,28($sp)
	sw	$gp,24($sp)
	move	$fp,$sp
	move	$v0,$a0
	sb	$v0,8($fp)
	sw	$zero,12($fp)
$L62:
	lw	$v0,12($fp)
	slt	$v0,$v0,64
	bne	$v0,$zero,$L65
	b	$L63
$L65:
	lw	$v1,12($fp)
	la	$v0,encoding_table
	addu	$v0,$v1,$v0
	lb	$v1,8($fp)
	lb	$v0,0($v0)
	bne	$v1,$v0,$L64
	li	$v0,1			# 0x1
	sw	$v0,16($fp)
	b	$L61
$L64:
	lw	$v0,12($fp)
	addu	$v0,$v0,1
	sw	$v0,12($fp)
	b	$L62
$L63:
	sw	$zero,16($fp)
$L61:
	lw	$v0,16($fp)
	move	$sp,$fp
	lw	$fp,28($sp)
	addu	$sp,$sp,32
	j	$ra
	.end	tablaContieneCaracter
	.size	tablaContieneCaracter, .-tablaContieneCaracter
	.align	2
	.globl	obtenerIndices
	.ent	obtenerIndices
obtenerIndices:
	.frame	$fp,32,$ra		# vars= 16, regs= 2/0, args= 0, extra= 8
	.mask	0x50000000,-4
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,32
	.cprestore 0
	sw	$fp,28($sp)
	sw	$gp,24($sp)
	move	$fp,$sp
	move	$v0,$a0
	sb	$v0,8($fp)
	sw	$zero,12($fp)
$L68:
	lw	$v0,12($fp)
	slt	$v0,$v0,64
	bne	$v0,$zero,$L71
	b	$L69
$L71:
	lw	$v1,12($fp)
	la	$v0,encoding_table
	addu	$v0,$v1,$v0
	lb	$v1,8($fp)
	lb	$v0,0($v0)
	bne	$v1,$v0,$L70
	lw	$v0,12($fp)
	sw	$v0,16($fp)
	b	$L67
$L70:
	lw	$v0,12($fp)
	addu	$v0,$v0,1
	sw	$v0,12($fp)
	b	$L68
$L69:
	li	$v0,-1			# 0xffffffffffffffff
	sw	$v0,16($fp)
$L67:
	lw	$v0,16($fp)
	move	$sp,$fp
	lw	$fp,28($sp)
	addu	$sp,$sp,32
	j	$ra
	.end	obtenerIndices
	.size	obtenerIndices, .-obtenerIndices
	.align	2
	.globl	transformarConTabla
	.ent	transformarConTabla
transformarConTabla:
	.frame	$fp,24,$ra		# vars= 8, regs= 2/0, args= 0, extra= 8
	.mask	0x50000000,-4
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,24
	.cprestore 0
	sw	$fp,20($sp)
	sw	$gp,16($sp)
	move	$fp,$sp
	sw	$a0,24($fp)
	sw	$a1,28($fp)
	sw	$zero,8($fp)
$L74:
	lw	$v0,8($fp)
	lw	$v1,28($fp)
	slt	$v0,$v0,$v1
	bne	$v0,$zero,$L77
	b	$L73
$L77:
	lw	$v1,24($fp)
	lw	$v0,8($fp)
	addu	$a0,$v1,$v0
	lw	$v1,24($fp)
	lw	$v0,8($fp)
	addu	$v0,$v1,$v0
	lbu	$v0,0($v0)
	lbu	$v0,encoding_table($v0)
	sb	$v0,0($a0)
	lw	$v0,8($fp)
	addu	$v0,$v0,1
	sw	$v0,8($fp)
	b	$L74
$L73:
	move	$sp,$fp
	lw	$fp,20($sp)
	addu	$sp,$sp,24
	j	$ra
	.end	transformarConTabla
	.size	transformarConTabla, .-transformarConTabla
	.align	2
	.globl	destransformarConTabla
	.ent	destransformarConTabla
destransformarConTabla:
	.frame	$fp,56,$ra		# vars= 16, regs= 3/0, args= 16, extra= 8
	.mask	0xd0000000,-8
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,56
	.cprestore 16
	sw	$ra,48($sp)
	sw	$fp,44($sp)
	sw	$gp,40($sp)
	move	$fp,$sp
	sw	$a0,56($fp)
	sw	$a1,60($fp)
	sw	$zero,24($fp)
$L79:
	lw	$v0,24($fp)
	lw	$v1,60($fp)
	slt	$v0,$v0,$v1
	bne	$v0,$zero,$L82
	b	$L80
$L82:
	lw	$v1,56($fp)
	lw	$v0,24($fp)
	addu	$v0,$v1,$v0
	lbu	$v1,0($v0)
	li	$v0,61			# 0x3d
	bne	$v1,$v0,$L83
	lw	$v0,24($fp)
	sw	$v0,32($fp)
	b	$L78
$L83:
	lw	$v1,56($fp)
	lw	$v0,24($fp)
	addu	$v0,$v1,$v0
	lb	$v0,0($v0)
	move	$a0,$v0
	la	$t9,obtenerIndices
	jal	$ra,$t9
	sw	$v0,28($fp)
	lw	$v0,28($fp)
	bgez	$v0,$L84
	li	$v0,-1			# 0xffffffffffffffff
	sw	$v0,32($fp)
	b	$L78
$L84:
	lw	$v1,56($fp)
	lw	$v0,24($fp)
	addu	$v1,$v1,$v0
	lbu	$v0,28($fp)
	sb	$v0,0($v1)
	lw	$v0,24($fp)
	addu	$v0,$v0,1
	sw	$v0,24($fp)
	b	$L79
$L80:
	lw	$v0,60($fp)
	sw	$v0,32($fp)
$L78:
	lw	$v0,32($fp)
	move	$sp,$fp
	lw	$ra,48($sp)
	lw	$fp,44($sp)
	addu	$sp,$sp,56
	j	$ra
	.end	destransformarConTabla
	.size	destransformarConTabla, .-destransformarConTabla
	.align	2
	.globl	agregarPaddingDeBinarioABase64
	.ent	agregarPaddingDeBinarioABase64
agregarPaddingDeBinarioABase64:
	.frame	$fp,24,$ra		# vars= 8, regs= 2/0, args= 0, extra= 8
	.mask	0x50000000,-4
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,24
	.cprestore 0
	sw	$fp,20($sp)
	sw	$gp,16($sp)
	move	$fp,$sp
	sw	$a0,24($fp)
	sw	$a1,28($fp)
	lw	$v0,28($fp)
	sw	$v0,8($fp)
$L86:
	lw	$v0,8($fp)
	slt	$v0,$v0,3
	bne	$v0,$zero,$L89
	b	$L87
$L89:
	lw	$v1,24($fp)
	lw	$v0,8($fp)
	addu	$v0,$v1,$v0
	addu	$v1,$v0,1
	li	$v0,61			# 0x3d
	sb	$v0,0($v1)
	lw	$v0,8($fp)
	addu	$v0,$v0,1
	sw	$v0,8($fp)
	b	$L86
$L87:
	lw	$v0,24($fp)
	move	$sp,$fp
	lw	$fp,20($sp)
	addu	$sp,$sp,24
	j	$ra
	.end	agregarPaddingDeBinarioABase64
	.size	agregarPaddingDeBinarioABase64, .-agregarPaddingDeBinarioABase64
	.align	2
	.globl	imprimir
	.ent	imprimir
imprimir:
	.frame	$fp,48,$ra		# vars= 8, regs= 3/0, args= 16, extra= 8
	.mask	0xd0000000,-8
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,48
	.cprestore 16
	sw	$ra,40($sp)
	sw	$fp,36($sp)
	sw	$gp,32($sp)
	move	$fp,$sp
	sw	$a0,48($fp)
	sw	$a1,52($fp)
	sw	$a2,56($fp)
	sw	$zero,24($fp)
$L91:
	lw	$v0,24($fp)
	lw	$v1,56($fp)
	slt	$v0,$v0,$v1
	bne	$v0,$zero,$L94
	b	$L90
$L94:
	lw	$v1,52($fp)
	lw	$v0,24($fp)
	addu	$v0,$v1,$v0
	lbu	$v0,0($v0)
	move	$a0,$v0
	lw	$a1,48($fp)
	la	$t9,fputc
	jal	$ra,$t9
	lw	$v0,24($fp)
	addu	$v0,$v0,1
	sw	$v0,24($fp)
	b	$L91
$L90:
	move	$sp,$fp
	lw	$ra,40($sp)
	lw	$fp,36($sp)
	addu	$sp,$sp,48
	j	$ra
	.end	imprimir
	.size	imprimir, .-imprimir
	.align	2
	.globl	validarBloque
	.ent	validarBloque
validarBloque:
	.frame	$fp,24,$ra		# vars= 8, regs= 2/0, args= 0, extra= 8
	.mask	0x50000000,-4
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,24
	.cprestore 0
	sw	$fp,20($sp)
	sw	$gp,16($sp)
	move	$fp,$sp
	sw	$a0,24($fp)
	sw	$a1,28($fp)
	sw	$zero,8($fp)
	sw	$zero,8($fp)
$L96:
	lw	$v0,28($fp)
	addu	$v1,$v0,-1
	lw	$v0,8($fp)
	slt	$v0,$v0,$v1
	bne	$v0,$zero,$L99
	b	$L97
$L99:
	lw	$v1,24($fp)
	lw	$v0,8($fp)
	addu	$v0,$v1,$v0
	lbu	$v1,0($v0)
	li	$v0,61			# 0x3d
	bne	$v1,$v0,$L98
	lw	$v1,24($fp)
	lw	$v0,8($fp)
	addu	$v0,$v1,$v0
	addu	$v0,$v0,1
	lbu	$v1,0($v0)
	li	$v0,61			# 0x3d
	beq	$v1,$v0,$L98
	sw	$zero,12($fp)
	b	$L95
$L98:
	lw	$v0,8($fp)
	addu	$v0,$v0,1
	sw	$v0,8($fp)
	b	$L96
$L97:
	li	$v0,1			# 0x1
	sw	$v0,12($fp)
$L95:
	lw	$v0,12($fp)
	move	$sp,$fp
	lw	$fp,20($sp)
	addu	$sp,$sp,24
	j	$ra
	.end	validarBloque
	.size	validarBloque, .-validarBloque
	.rdata
	.align	2
$LC0:
	.ascii	"El bloque tiene padding erroneo\n\000"
	.align	2
$LC1:
	.ascii	"El bloque tiene un caracter erroneo\n\000"
	.align	2
$LC2:
	.ascii	"El bloque tiene una longitud incorrecta\n\000"
	.text
	.align	2
	.globl	decode
	.ent	decode
decode:
	.frame	$fp,72,$ra		# vars= 32, regs= 3/0, args= 16, extra= 8
	.mask	0xd0000000,-8
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,72
	.cprestore 16
	sw	$ra,64($sp)
	sw	$fp,60($sp)
	sw	$gp,56($sp)
	move	$fp,$sp
	sw	$a0,72($fp)
	sw	$a1,76($fp)
	sw	$zero,24($fp)
	sw	$zero,28($fp)
	lw	$a0,72($fp)
	la	$t9,fgetc
	jal	$ra,$t9
	sw	$v0,36($fp)
$L103:
	lw	$v0,72($fp)
	lhu	$v0,12($v0)
	srl	$v0,$v0,5
	andi	$v0,$v0,0x1
	beq	$v0,$zero,$L105
	b	$L104
$L105:
	addu	$v1,$fp,40
	lw	$v0,24($fp)
	addu	$v1,$v1,$v0
	lbu	$v0,36($fp)
	sb	$v0,0($v1)
	lw	$v0,24($fp)
	addu	$v0,$v0,1
	sw	$v0,24($fp)
	lw	$v1,24($fp)
	li	$v0,4			# 0x4
	bne	$v1,$v0,$L106
	sw	$zero,24($fp)
	addu	$v0,$fp,40
	move	$a0,$v0
	li	$a1,4			# 0x4
	la	$t9,validarBloque
	jal	$ra,$t9
	beq	$v0,$zero,$L108
	lw	$v0,28($fp)
	beq	$v0,$zero,$L107
	lbu	$v1,40($fp)
	li	$v0,61			# 0x3d
	bne	$v1,$v0,$L108
	b	$L107
$L108:
	la	$a0,$LC0
	lw	$a1,76($fp)
	la	$t9,fputs
	jal	$ra,$t9
	b	$L102
$L107:
	lw	$v0,36($fp)
	xori	$v0,$v0,0x3d
	sltu	$v0,$v0,1
	sw	$v0,28($fp)
	addu	$v0,$fp,40
	move	$a0,$v0
	li	$a1,4			# 0x4
	la	$t9,destransformarConTabla
	jal	$ra,$t9
	sw	$v0,48($fp)
	lw	$v0,48($fp)
	bgez	$v0,$L109
	la	$a0,$LC1
	lw	$a1,76($fp)
	la	$t9,fputs
	jal	$ra,$t9
	b	$L102
$L109:
	addu	$v1,$fp,40
	lw	$v0,48($fp)
	addu	$v0,$v0,-1
	move	$a0,$v1
	move	$a1,$v0
	la	$t9,transformacionBase64ABinario
	jal	$ra,$t9
	sw	$v0,32($fp)
	lw	$v0,48($fp)
	addu	$v0,$v0,-1
	lw	$a0,76($fp)
	lw	$a1,32($fp)
	move	$a2,$v0
	la	$t9,imprimir
	jal	$ra,$t9
	lw	$a0,32($fp)
	la	$t9,free
	jal	$ra,$t9
$L106:
	lw	$a0,72($fp)
	la	$t9,fgetc
	jal	$ra,$t9
	sw	$v0,36($fp)
	b	$L103
$L104:
	lw	$v0,24($fp)
	beq	$v0,$zero,$L102
	la	$a0,$LC2
	lw	$a1,76($fp)
	la	$t9,fputs
	jal	$ra,$t9
$L102:
	move	$sp,$fp
	lw	$ra,64($sp)
	lw	$fp,60($sp)
	addu	$sp,$sp,72
	j	$ra
	.end	decode
	.size	decode, .-decode
	.align	2
	.globl	encode
	.ent	encode
encode:
	.frame	$fp,72,$ra		# vars= 32, regs= 3/0, args= 16, extra= 8
	.mask	0xd0000000,-8
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,72
	.cprestore 16
	sw	$ra,64($sp)
	sw	$fp,60($sp)
	sw	$gp,56($sp)
	move	$fp,$sp
	sw	$a0,72($fp)
	sw	$a1,76($fp)
	sw	$zero,24($fp)
	lw	$a0,72($fp)
	la	$t9,fgetc
	jal	$ra,$t9
	sw	$v0,32($fp)
$L112:
	lw	$v0,72($fp)
	lhu	$v0,12($v0)
	srl	$v0,$v0,5
	andi	$v0,$v0,0x1
	beq	$v0,$zero,$L114
	b	$L113
$L114:
	addu	$v1,$fp,40
	lw	$v0,24($fp)
	addu	$v1,$v1,$v0
	lbu	$v0,32($fp)
	sb	$v0,0($v1)
	lw	$v0,24($fp)
	addu	$v0,$v0,1
	sw	$v0,24($fp)
	lw	$v1,24($fp)
	li	$v0,3			# 0x3
	bne	$v1,$v0,$L115
	sw	$zero,24($fp)
	addu	$v0,$fp,40
	move	$a0,$v0
	li	$a1,3			# 0x3
	la	$t9,transformacionBinarioABase64
	jal	$ra,$t9
	sw	$v0,28($fp)
	lw	$a0,28($fp)
	li	$a1,4			# 0x4
	la	$t9,transformarConTabla
	jal	$ra,$t9
	lw	$a0,76($fp)
	lw	$a1,28($fp)
	li	$a2,4			# 0x4
	la	$t9,imprimir
	jal	$ra,$t9
	lw	$a0,28($fp)
	la	$t9,free
	jal	$ra,$t9
$L115:
	lw	$a0,72($fp)
	la	$t9,fgetc
	jal	$ra,$t9
	sw	$v0,32($fp)
	b	$L112
$L113:
	lw	$v0,24($fp)
	beq	$v0,$zero,$L111
	lw	$v0,24($fp)
	sw	$v0,48($fp)
$L117:
	lw	$v0,24($fp)
	slt	$v0,$v0,3
	bne	$v0,$zero,$L120
	b	$L118
$L120:
	addu	$v1,$fp,40
	lw	$v0,24($fp)
	addu	$v0,$v1,$v0
	sb	$zero,0($v0)
	lw	$v0,24($fp)
	addu	$v0,$v0,1
	sw	$v0,24($fp)
	b	$L117
$L118:
	addu	$v0,$fp,40
	move	$a0,$v0
	li	$a1,3			# 0x3
	la	$t9,transformacionBinarioABase64
	jal	$ra,$t9
	sw	$v0,28($fp)
	lw	$a0,28($fp)
	li	$a1,4			# 0x4
	la	$t9,transformarConTabla
	jal	$ra,$t9
	lw	$a0,28($fp)
	lw	$a1,48($fp)
	la	$t9,agregarPaddingDeBinarioABase64
	jal	$ra,$t9
	lw	$a0,76($fp)
	lw	$a1,28($fp)
	li	$a2,4			# 0x4
	la	$t9,imprimir
	jal	$ra,$t9
	lw	$a0,28($fp)
	la	$t9,free
	jal	$ra,$t9
$L111:
	move	$sp,$fp
	lw	$ra,64($sp)
	lw	$fp,60($sp)
	addu	$sp,$sp,72
	j	$ra
	.end	encode
	.size	encode, .-encode
	.rdata
	.align	2
$LC3:
	.ascii	"No options given\n\000"
	.align	2
$LC4:
	.ascii	"vhedi:o:\000"
	.align	2
$LC5:
	.ascii	"tp0 for 6620-Orga de compus. 1ro C 2014 \n\000"
	.align	2
$LC6:
	.ascii	"OPTIONS: \n"
	.ascii	" -e --encode Encodes to Base64 \n"
	.ascii	" -d --decode Decodes from base64 \n"
	.ascii	" -i --input file Reads from file or stdin \n"
	.ascii	" -o --output file Writes to file or stdout \n"
	.ascii	" -v --version Show version string \n"
	.ascii	" -h --help Print this message and quit \n\000"
	.align	2
$LC7:
	.ascii	"rb\000"
	.align	2
$LC8:
	.ascii	"Error in file..\n\000"
	.align	2
$LC9:
	.ascii	"w\000"
	.text
	.align	2
	.globl	getArgs
	.ent	getArgs
getArgs:
	.frame	$fp,72,$ra		# vars= 32, regs= 3/0, args= 16, extra= 8
	.mask	0xd0000000,-8
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,72
	.cprestore 16
	sw	$ra,64($sp)
	sw	$fp,60($sp)
	sw	$gp,56($sp)
	move	$fp,$sp
	sw	$a0,72($fp)
	sw	$a1,76($fp)
	lw	$v1,72($fp)
	li	$v0,1			# 0x1
	bne	$v1,$v0,$L122
	la	$a0,$LC3
	la	$t9,printf
	jal	$ra,$t9
	b	$L121
$L122:
	sb	$zero,32($fp)
	sb	$zero,33($fp)
	sb	$zero,34($fp)
	sb	$zero,35($fp)
	sb	$zero,36($fp)
	sb	$zero,37($fp)
	sw	$zero,40($fp)
	sw	$zero,44($fp)
$L123:
	lw	$a0,72($fp)
	lw	$a1,76($fp)
	la	$a2,$LC4
	la	$t9,getopt
	jal	$ra,$t9
	sw	$v0,48($fp)
	lw	$v1,48($fp)
	li	$v0,-1			# 0xffffffffffffffff
	bne	$v1,$v0,$L125
	b	$L124
$L125:
	lw	$v0,48($fp)
	addu	$v0,$v0,-63
	sw	$v0,52($fp)
	lw	$v1,52($fp)
	sltu	$v0,$v1,56
	beq	$v0,$zero,$L123
	lw	$v0,52($fp)
	sll	$v1,$v0,2
	la	$v0,$L137
	addu	$v0,$v1,$v0
	lw	$v0,0($v0)
	.cpadd	$v0
	j	$v0
	.rdata
	.align	2
$L137:
	.gpword	$L133
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L130
	.gpword	$L129
	.gpword	$L123
	.gpword	$L123
	.gpword	$L128
	.gpword	$L131
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L132
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L123
	.gpword	$L127
	.text
$L127:
	li	$v0,1			# 0x1
	sb	$v0,34($fp)
	b	$L123
$L128:
	li	$v0,1			# 0x1
	sb	$v0,33($fp)
	b	$L123
$L129:
	li	$v0,1			# 0x1
	sb	$v0,35($fp)
	b	$L123
$L130:
	li	$v0,1			# 0x1
	sb	$v0,32($fp)
	b	$L123
$L131:
	li	$v0,1			# 0x1
	sb	$v0,36($fp)
	lw	$v0,optarg
	sw	$v0,40($fp)
	b	$L123
$L132:
	li	$v0,1			# 0x1
	sb	$v0,37($fp)
	lw	$v0,optarg
	sw	$v0,44($fp)
	b	$L123
$L133:
	lw	$v1,optopt
	li	$v0,105			# 0x69
	bne	$v1,$v0,$L134
	b	$L121
$L134:
	lw	$v1,optopt
	li	$v0,111			# 0x6f
	bne	$v1,$v0,$L123
	b	$L121
$L124:
	lbu	$v0,34($fp)
	beq	$v0,$zero,$L139
	la	$a0,$LC5
	la	$t9,printf
	jal	$ra,$t9
$L139:
	lbu	$v0,33($fp)
	beq	$v0,$zero,$L140
	la	$a0,$LC6
	la	$t9,printf
	jal	$ra,$t9
$L140:
	lbu	$v0,36($fp)
	beq	$v0,$zero,$L141
	lw	$a0,40($fp)
	la	$a1,$LC7
	la	$t9,fopen
	jal	$ra,$t9
	sw	$v0,24($fp)
	lw	$v0,24($fp)
	lhu	$v0,12($v0)
	srl	$v0,$v0,6
	andi	$v0,$v0,0x1
	beq	$v0,$zero,$L143
	la	$a0,__sF+176
	la	$a1,$LC8
	la	$t9,fprintf
	jal	$ra,$t9
	b	$L143
$L141:
	la	$a0,__sF
	la	$t9,fflush
	jal	$ra,$t9
	la	$v0,__sF
	sw	$v0,24($fp)
$L143:
	lbu	$v0,37($fp)
	beq	$v0,$zero,$L144
	lw	$a0,44($fp)
	la	$a1,$LC9
	la	$t9,fopen
	jal	$ra,$t9
	sw	$v0,28($fp)
	lw	$v0,28($fp)
	lhu	$v0,12($v0)
	srl	$v0,$v0,6
	andi	$v0,$v0,0x1
	beq	$v0,$zero,$L146
	la	$a0,__sF+176
	la	$a1,$LC8
	la	$t9,fprintf
	jal	$ra,$t9
	b	$L146
$L144:
	la	$a0,__sF+88
	la	$t9,fflush
	jal	$ra,$t9
	la	$v0,__sF+88
	sw	$v0,28($fp)
$L146:
	lbu	$v0,35($fp)
	beq	$v0,$zero,$L147
	lbu	$v0,32($fp)
	bne	$v0,$zero,$L147
	lw	$a0,24($fp)
	lw	$a1,28($fp)
	la	$t9,encode
	jal	$ra,$t9
$L147:
	lbu	$v0,32($fp)
	beq	$v0,$zero,$L148
	lbu	$v0,35($fp)
	bne	$v0,$zero,$L148
	lw	$a0,24($fp)
	lw	$a1,28($fp)
	la	$t9,decode
	jal	$ra,$t9
$L148:
	lw	$a0,24($fp)
	la	$t9,fclose
	jal	$ra,$t9
	lw	$a0,28($fp)
	la	$t9,fclose
	jal	$ra,$t9
$L121:
	move	$sp,$fp
	lw	$ra,64($sp)
	lw	$fp,60($sp)
	addu	$sp,$sp,72
	j	$ra
	.end	getArgs
	.size	getArgs, .-getArgs
	.align	2
	.globl	main
	.ent	main
main:
	.frame	$fp,40,$ra		# vars= 0, regs= 3/0, args= 16, extra= 8
	.mask	0xd0000000,-8
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,40
	.cprestore 16
	sw	$ra,32($sp)
	sw	$fp,28($sp)
	sw	$gp,24($sp)
	move	$fp,$sp
	sw	$a0,40($fp)
	sw	$a1,44($fp)
	lw	$a0,40($fp)
	lw	$a1,44($fp)
	la	$t9,getArgs
	jal	$ra,$t9
	move	$v0,$zero
	move	$sp,$fp
	lw	$ra,32($sp)
	lw	$fp,28($sp)
	addu	$sp,$sp,40
	j	$ra
	.end	main
	.size	main, .-main
	.ident	"GCC: (GNU) 3.3.3 (NetBSD nb3 20040520)"
